package com.hsg;

import java.util.ArrayList;

/**
 * @description:
 * @author:hsg
 * @date: Created in 2020/6/7 10:00
 * @version: 1.8
 * @modified By:
 */
// 抽象类不能实例化
public abstract class Creature {
    private String id;
    private String description;
    private int HPvalue;

    private Weapon currentWeapon;

    private ArrayList<Weapon> weapons=new ArrayList<>();
    //用weapin,作用于targetCreature
    //abstract 声明的功能，没有实现
    public abstract void useArticle(Weapon weapon, Creature targetCreature);

    public Creature() {
    }

    public Creature(String id, String description) {
        this.id = id;
        this.description = description;
    }

    public Creature(String id, String description, int HPvalue) {
        this.id = id;
        this.description = description;
        this.HPvalue = HPvalue;
    }

    public int getHPvalue() {
        return HPvalue;
    }

    public void setHPvalue(int HPvalue) {
        this.HPvalue=HPvalue;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public Weapon getCurrentWeapon() {
        return currentWeapon;
    }

    public void setCurrentWeapon(Weapon currentWeapon) {
        this.currentWeapon = currentWeapon;
    }

    public ArrayList<Weapon> getWeapons() {
        return weapons;
    }

    public void setWeapons(ArrayList<Weapon> weapons) {
        this.weapons = weapons;
    }
}
